第2章 OAuthのロール
リソースオーナー
リソースサーバーに置かれたリソースの所有者
クライアントのユーザーでもある
サードパーティアプリにリソースへのアクセス権限を移譲する。
クライアント
保護されたリソースにアクセスしようとするアプリケーション。
クライアントIDとクライアントシークレットをセキュアに保存できるのが「コンフィデンシャルクライアント」、セキュアに保存できない場合は「パブリッククライアント」と呼ぶ。
リソースサーバー
Web APIでデータや機能を提供するサービス
認可サーバー
以下の機能を提供する。
リソースオーナーを認証する。
クライアントのリソースへのアクセスについてリソースオーナーの同意を得る。
クライアントのリソースのリソースオーナーであることを確かめるため。
アクセストークンを発行する。
認可フロー
1. クライアントは認可サーバに対して「リソースのアクセス権」を要求する。
2. 認可サーバは「クライアントへのアクセス権の移譲」についてリソースオーナーの意思を確認する。
3. リソースオーナーはアクセス権の移譲について同意する。
4. 認可サーバーはアクセス権が移譲された証であるアクセストークンを発行する。
5. クライアントはアクセストークンをもってリソースへのアクセスが可能になる。